package br.com.mtech.ctrlliberty.ejb.service;

import static br.com.mtech.ctrlliberty.ejb.util.CryptographerUtil.criptografar;

import javax.ejb.EJB;
import javax.ejb.Stateless;

import br.com.mtech.ctrlliberty.clientjar.ejb.UsuarioEJBRemote;
import br.com.mtech.ctrlliberty.clientjar.entity.UsuarioVO;
import br.com.mtech.ctrlliberty.clientjar.exception.BusinessException;
import br.com.mtech.ctrlliberty.ejb.dao.UsuarioEJBDAOLocal;

/**
 * Session Bean implementation class UsuarioEJB
 */
@Stateless
public class UsuarioEJB implements UsuarioEJBRemote {

    @EJB
    UsuarioEJBDAOLocal usuarioEJBDAO;
    
    public UsuarioVO inserir(UsuarioVO usuario) throws BusinessException{
    	
    	usuario.setSenha(criptografar(usuario.getSenha()));
    	
    	usuario = usuarioEJBDAO.inserir(usuario);
    	
    	return usuario;
    }
    
    public UsuarioVO autenticar(String login, String senha) throws BusinessException{
    	
    	UsuarioVO usuarioVO = usuarioEJBDAO.selecionarPorLogin(login);
    	
    	senha = criptografar(senha);
    	
    	if (!senha.equals(usuarioVO.getSenha())){
    		throw new BusinessException("password_error");
    	}
    	
    	return usuarioVO;
    }

}
